home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Speccy ClassiX 1998
/
Speccy ClassiX 98.iso
/
amiga_system
/
the_aminet
/
dev
/
gcc
/
ixemulsrc.lha
/
ixemul-41.4
/
Product-Info
< prev
next >
Wrap
Fred Fish's Product-Info
|
1995-08-28
|
3KB
|
73 lines
.name
ixemul
.fullname
Unix Emulation Library
.type
Library
.short
Shared lib providing UNIX like environ.
.description
(by Markus Wild)
I always wanted a library, that would emulate as much as possible of a
**IX/BSD environment on the Amiga, so that programs (usually programming
tools) written for **IX/BSD could be ported in a quick and straight forward
way to the Amiga. I guess the library accomplishes this goal fairly well.
What it is and what it isn't
============================
The design of the library was therefore guided towards **IX/BSD
compatibility, and *not* :
o to be too conservative with resources
o to be particularly conformant to Amiga habits. Thus if I had to decide
whether I should make a function act more like an Amiga function or
more like a **IX/BSD one, I decided for the latter. As an example:
_cli_parse() does wildcard expansion, and tries to apply more or less
**IX/BSD shell semantics to an argument line, it doesn't call
ReadArgs().
The types used in my own source code are all from sys/types.h (except
BPTR). I don't think capitalized identifiers should be used for typedef'd
types. According to C-conventions, anything written in captials should
be `#undef'inable, which typedefs aren't. Thus if you write contributions
to be included into the official distribution of this library, code
according to this. Use `u_char' and not UBYTE, etc. I don't care that
this is against the Commodore coding standard, this is my code, and
I decide what I like and what not.
o to be particularly suited for inclusion into a shared library, although
most things *are* shared now. What I'd really want for the Amiga is
the concept of a dynamic linker.
On the other hand, it should be:
o expandable. As an example, a file descriptor already can refer to `real'
files, directories, memory buffers treated as files. I plan to add
sockets in some next release (Commodore: please get out some examples
on how to use SANA-II stuff, so my sockets can be compatible!)
o patchable. If you want some function to behave differently, you can
SetFunction() it, and the rest of the library should use your new entry.
NOTE: I used this only for major functions, that may reasonably change.
I didn't call functions like strcmp(), strlen(), bcopy() that way for
efficiency reasons (and my lazyness to change the whole string/
and other libraries;-)))
This version doesn't particularly follow this goal very well, mostly
stdio is still the original BSD code, and doesn't use syscall()...
Also included is ixtrace, a utility which lets you scan every call made
through the library base when you install one of the *.trace versions of
the library.
.version
41.2
.author
Markus M. Wild
.distribution
GNU Public License
.source
Includes source.
.docs
docs/README
docs/README2
.described-by
Fred Fish (fnf@fishpond.cygnus.com)
.submittal
Downloaded via ftp from wuarchive.wustl.edu.